Problem:
 active(f(x)) -> mark(x)
 top(active(c())) -> top(mark(c()))
 top(mark(x)) -> top(check(x))
 check(f(x)) -> f(check(x))
 check(x) -> start(match(f(X()),x))
 match(f(x),f(y)) -> f(match(x,y))
 match(X(),x) -> proper(x)
 proper(c()) -> ok(c())
 proper(f(x)) -> f(proper(x))
 f(ok(x)) -> ok(f(x))
 start(ok(x)) -> found(x)
 f(found(x)) -> found(f(x))
 top(found(x)) -> top(active(x))
 active(f(x)) -> f(active(x))
 f(mark(x)) -> mark(f(x))

Proof:
 Bounds Processor:
  bound: 3
  enrichment: match
  automaton:
   final states: {12,11,10,9,8,7,6}
   transitions:
    mark1(22) -> 13*
    mark1(23) -> 23,11
    f1(5) -> 23*
    f1(2) -> 23*
    f1(4) -> 23*
    f1(1) -> 23*
    f1(18) -> 19*
    f1(3) -> 23*
    top1(13) -> 7*
    active1(5) -> 13*
    active1(2) -> 13*
    active1(4) -> 13*
    active1(1) -> 13*
    active1(3) -> 13*
    found1(5) -> 12*
    found1(2) -> 12*
    found1(4) -> 12*
    found1(1) -> 12*
    found1(23) -> 23,11
    found1(3) -> 12*
    ok1(22) -> 9,10
    ok1(23) -> 23,11
    c1() -> 22*
    proper1(5) -> 9*
    proper1(2) -> 9*
    proper1(4) -> 9*
    proper1(1) -> 9*
    proper1(3) -> 9*
    start1(20) -> 8*
    match1(19,2) -> 20*
    match1(19,4) -> 20*
    match1(19,1) -> 20*
    match1(19,3) -> 20*
    match1(19,5) -> 20*
    X1() -> 18*
    check1(5) -> 13*
    check1(2) -> 13*
    check1(4) -> 13*
    check1(1) -> 13*
    check1(3) -> 13*
    start2(27) -> 13*
    active0(5) -> 6*
    active0(2) -> 6*
    active0(4) -> 6*
    active0(1) -> 6*
    active0(3) -> 6*
    match2(26,2) -> 27*
    match2(26,4) -> 27*
    match2(26,1) -> 27*
    match2(26,3) -> 27*
    match2(26,5) -> 27*
    f0(5) -> 11*
    f0(2) -> 11*
    f0(4) -> 11*
    f0(1) -> 11*
    f0(3) -> 11*
    f2(25) -> 26*
    mark0(5) -> 1*
    mark0(2) -> 1*
    mark0(4) -> 1*
    mark0(1) -> 1*
    mark0(3) -> 1*
    X2() -> 25*
    top0(5) -> 7*
    top0(2) -> 7*
    top0(4) -> 7*
    top0(1) -> 7*
    top0(3) -> 7*
    top2(32) -> 7*
    c0() -> 2*
    check2(22) -> 32*
    check0(5) -> 8*
    check0(2) -> 8*
    check0(4) -> 8*
    check0(1) -> 8*
    check0(3) -> 8*
    start3(35) -> 32*
    start0(5) -> 12*
    start0(2) -> 12*
    start0(4) -> 12*
    start0(1) -> 12*
    start0(3) -> 12*
    match3(34,22) -> 35*
    match0(3,1) -> 9*
    match0(3,3) -> 9*
    match0(3,5) -> 9*
    match0(4,2) -> 9*
    match0(4,4) -> 9*
    match0(5,1) -> 9*
    match0(5,3) -> 9*
    match0(5,5) -> 9*
    match0(1,2) -> 9*
    match0(1,4) -> 9*
    match0(2,1) -> 9*
    match0(2,3) -> 9*
    match0(2,5) -> 9*
    match0(3,2) -> 9*
    match0(3,4) -> 9*
    match0(4,1) -> 9*
    match0(4,3) -> 9*
    match0(4,5) -> 9*
    match0(5,2) -> 9*
    match0(5,4) -> 9*
    match0(1,1) -> 9*
    match0(1,3) -> 9*
    match0(1,5) -> 9*
    match0(2,2) -> 9*
    match0(2,4) -> 9*
    f3(33) -> 34*
    X0() -> 3*
    X3() -> 33*
    proper0(5) -> 10*
    proper0(2) -> 10*
    proper0(4) -> 10*
    proper0(1) -> 10*
    proper0(3) -> 10*
    ok0(5) -> 4*
    ok0(2) -> 4*
    ok0(4) -> 4*
    ok0(1) -> 4*
    ok0(3) -> 4*
    found0(5) -> 5*
    found0(2) -> 5*
    found0(4) -> 5*
    found0(1) -> 5*
    found0(3) -> 5*
  problem:
   
  Qed